// pages/studyMore/studyMore.js
const app =getApp({})
// 彻底兼容各种require导出方式
let md2html = null;
try {
  const miniMarked = require('../../utils/mini-marked.js');
  md2html = miniMarked.md2html || (miniMarked.default && miniMarked.default.md2html) || miniMarked || (miniMarked.default && miniMarked.default);
} catch(e) {
  md2html = null;
}
Page({

  /**
   * 页面的初始数据
   */
  data: {
    documentAll:[],
    user_exam_count:{
        sum:0,/* 答题总数 */
        correct:0,/* 答对总数 */
        accuracy:0 /* 正确率 */
    },
    userName:"",
    ai_report: '', // 新增AI分析报告
    ai_report_html: '' // 用于rich-text渲染
  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad(options) {
        this.getCurrentInfo()
        this.setData({
            userName:wx.getStorageSync('userInfo').username
        })
  },
  onShow(){
      this.get_user_document()
  },
  /* 计算正确率 */
  getCurrentInfo(){
    wx.request({
      url:app.globalData.baseUrl + '/get_user_stats',
      method:"POST",
      data:{
          userid:wx.getStorageSync('userInfo').id
      },success:(res)=>{
          wx.hideLoading()
          if(res.data.success==true){
              this.setData({
                  user_exam_count:{
                      sum:res.data.data.sum,/* 答题总数 */
                      correct:res.data.data.correct,/* 答对总数 */
                      accuracy:parseFloat(res.data.data.accuracy).toFixed(2) /* 正确率 */
                  }
              })
              console.log("正确率信息",this.data.user_exam_count);
          }
      },fail:(res)=>{
          wx.hideLoading()
          wx.showToast({
            title: 'serve error',
            icon:"none"
          })
      }
    })
  },
  /* 查看详细 */
  get_user_document(){
    wx.showLoading({
      title: '加载中',
    })
    wx.request({
      url:app.globalData.baseUrl + '/user/get_user_document',
      method:"POST",
      data:{
          userid:wx.getStorageSync('userInfo').id
      },success:(res)=>{
          wx.hideLoading()
          console.log("AI分析报告",res);
          if(res.data.success==true){
              wx.hideLoading()
              var temp = res.data.data
              temp.forEach(element => {
                 element.subTime=this.formatGMTTime(element.subTime)
              });
              let ai_report = res.data.ai_report || ''
              let ai_report_html = ''
              if(ai_report && typeof md2html === 'function'){
                ai_report_html = md2html(ai_report)
              } else {
                ai_report_html = ai_report // 兜底：直接显示原文
              }
              this.setData({
                documentAll:temp,
                ai_report: ai_report,
                ai_report_html: ai_report_html
              })
              console.log("信息",this.data.documentAll);
          }else{
              wx.hideLoading()
              console.log(res.data);
          }
      },fail:(res)=>{
          wx.hideLoading()
          wx.showToast({
            title: 'serve error',
            icon:"none"
          })
      }
    })
  },
  formatGMTTime(gmtString) {
    // 解析GMT时间字符串为Date对象
    const date = new Date(gmtString);
  
    // 获取年、月、日、小时、分钟和秒
    const year = date.getFullYear();
    const month = date.getMonth() + 1;  // getMonth()返回的月份是从0开始的，所以需要+1
    const day = date.getDate();
    const hours = date.getHours();
    const minutes = date.getMinutes();
    const seconds = date.getSeconds();
  
    // 构建目标格式的时间字符串
    const formattedTime = `${year}-${month}-${day} ${hours}:${minutes}:${seconds}`;
  
    return formattedTime;
  }  
})
